import { fileURLToPath, URL } from "node:url";

import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import vueJsx from "@vitejs/plugin-vue-jsx";
import cesium from "vite-plugin-cesium";
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(), vueJsx(), cesium()], // , cesium()
  resolve: {
    alias: {
      "@": fileURLToPath(new URL("./src", import.meta.url)),
    },
  },
  //设置反向代理，跨域
  server: {
    // host: '0.0.0.0',//设置地址：http://localhost
    port: 4500, // 设置服务启动端口号
    // open: true, // 设置服务启动时是否自动打开浏览器
    cors: true, // 允许跨域
    proxy: {
      // https://webst02.is.autonavi.com/appmaptile/tilemapresource.xml
      "/appmaptile": {
        target: "http://webst02.is.autonavi.com", //代理的地址
        // secure: true,
        changeOrigin: true,
        // rewrite: (path) => path.replace(/^\/api/, ""), //这里的/需要转义
      },
      // "/api": {
      //   target: "http://192.168.0.106:3456", //代理的地址
      //   // secure: true,
      //   changeOrigin: true,
      //   // rewrite: (path) => path.replace(/^\/api/, ""), //这里的/需要转义
      // },
    },
  },
});

/*

 BOT:Cesium的布局器可以实现宽高自适应，通过使用自定义布局器，可以计算出宽高，然后修改窗口：
this.viewer.resize();
viewer.scene.morphTo2D(0);
this.viewer.scene.morphToColumbaisMode(0);
viewer.scene.camera.lookAt(Cesium.Cartesian3.ZERO, new Cesium.HeadingPitchRange(0, Cesium.Math.toRadians(-90), 11000000));
viewer.timeline.container.style.visibility = 'visible';
可以配合scene.camera.setView方法来调整摄像机的位置、角度和大小，从而调整场景的高度。
*/
